//
//  DemoFaceLiveNetwork.h
//  DemoFaceLiveNetwork
//
//  Created by FinAuth on 2024/02/2.
//  Copyright © 2024 FinAuth. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIImage.h>

NS_ASSUME_NONNULL_BEGIN

typedef void(^RequestSuccess)(NSInteger statusCode, NSDictionary* responseObject);
typedef void(^RequestFailure)(NSInteger statusCode, NSError* error);

@interface DemoFaceLiveNetwork : NSObject

+ (DemoFaceLiveNetwork *)singleton;

//  Public
- (void)getV5BizTokenWithLivenessid:(NSString *)livenessID success:(RequestSuccess)successBlock failure:(RequestFailure)failureBlock;

- (void)getV5VerifyWithBizToken:(NSString *)bizTokenStr verifyID:(NSString *)verifyID idcardName:(NSString *)idcardNameStr idcardNumber:(NSString *)idcardNumberStr success:(RequestSuccess)successBlock failure:(RequestFailure)failureBlock;

- (void)getV5VerifyWithBizToken:(NSString *)bizTokenStr verifyID:(NSString *)verifyID faceImage:(UIImage *)faceImage success:(RequestSuccess)successBlock failure:(RequestFailure)failureBlock;

//  Private
- (void)getV5LicenseAndConfigWithBodyInfo:(NSDictionary *)bodyDict success:(RequestSuccess)successBlock failure:(RequestFailure)failureBlock;

- (void)getV5VerifyWithLiveType:(NSString *)livenessType delta:(NSData *)data success:(RequestSuccess)successBlock failure:(RequestFailure)failureBlock;

@end

NS_ASSUME_NONNULL_END
